/**
 * 字符串切割
 * @param str 字符串
 * @param len 每段长度
 * @param chart 切割字符
 */
export function cardFormatter(str, len = 4, chart = ' ') {
  if(!str) return str
  str = str.replace(/\s*/g, '')
  if(!str || str.length === 0) {
    return ''
  }

  const length = str.length
  const size = Math.ceil(length / len)

  const arr = []

  for(let i = 0; i < size; i++) {
    arr.push(str.substr(i * len, len))
  }

  return arr.join(chart)
}

/**
 * 切割后字符串反转
 * @param str
 * @param len
 * @param chart
 * @returns {*}
 */
export function cardRevert(str, len = 4, chart = ' ') {
  if(!str) return str
  str = str.replace(/\s*/g, '') // 去除空格

  if(str.indexOf(chart) < 0) {
    // 如果是按空格切割的可以直接返回了
    return str
  }

  const arr = str.split(chart)
  return arr.join('')
}
